A video communication system typically comprises a source encoding system, a channel and a source decoding system. The source encoding system generates variable-length codewords sequences and transmits them over the channel to the source decoding system that decodes them thanks to a shared code.
Variable-length codes, which are widely used in video coding standards for their compression capabilities are very sensitive to channel errors. As a matter of fact, when some bits are altered by the channel, synchronisation losses can occur at the receiver side, possibly leading to dramatic symbol error rates. This phenomenon has led to introduce modified variable-length codes such as e.g. self-synchronising Huffman codes, reversible variable-length codes.
Another solution is to re-introduce redundancy in the bitstream by inserting an error correcting code in the chain. The key point of the latter solution is to appropriately use the residual source redundancy at the decoding side. Being considered as a form of implicit channel protection by the decoder, this redundancy can be exploited as such to provide error correction capability of the variable length coded source.
Recent work showed that low-complexity approximate MAP (Maximum A Posteriori) decoders could be used, that provide approximately the same performance as all existing soft decoding algorithms while exhibiting a complexity close to the hard decoding case. Such a decoder is disclosed in [L. Perros-Meilhac and C. Lamy. “Huffmann tree based metric derivation for a low-complexity sequential soft VLC decoding”. In Proceedings of ICC'02, volume 2, pages 783–787, New York, USA, April–May 2002].
Even though MAP algorithms exist and provide very good results in terms of error correction, they are very complex. On the other hand, stack algorithms, as the one disclosed in [Buttigieg:“Variable-length error-correcting codes” PhD thesis, University of Manchester, United Kingdom, 1995] are much less complex and can reach similar performance. However, they are primarily symbol level decoding algorithms and thus are not well adapted to provide reliability information on bits.
The aim of the invention is to provide a method for source decoding a variable-length soft-input codewords sequence working at a bit level and at low complexity for VLC codes.